package leetcode;

public class p101判断是否为对称二叉树 {
    public boolean isSymmetric(TreeNode root) {
        //对称二叉树的左子树和右子树互为镜像
        if(root==null) {
            return true;
        }

        return isMirror(root.left,root.right);
    }

    private boolean isMirror(TreeNode p,TreeNode q) {
        if(p==null && q==null) {
            return true;
        }
        if (p==null || q==null) {
            return false;
        }

        return p.val==q.val && isMirror(p.left,q.right) && isMirror(p.right,q.left);
    }


}
